package org.zoomdy.gdbx.arch;

public class TargetRegistersCortexM extends TargetRegisters
{
    public TargetRegistersCortexM()
    {
        super(23);

        this.arrayRegisters[0] = new Register("r0", 0, 4);
        this.arrayRegisters[1] = new Register("r1", 4, 4);
        this.arrayRegisters[2] = new Register("r2", 8, 4);
        this.arrayRegisters[3] = new Register("r3", 12, 4);
        this.arrayRegisters[4] = new Register("r4", 16, 4);
        this.arrayRegisters[5] = new Register("r5", 20, 4);
        this.arrayRegisters[6] = new Register("r6", 24, 4);
        this.arrayRegisters[7] = new Register("r7", 28, 4);
        
        this.arrayRegisters[8] = new Register("r8", 32, 4);
        this.arrayRegisters[9] = new Register("r9", 36, 4);
        this.arrayRegisters[10] = new Register("r10", 40, 4);
        this.arrayRegisters[11] = new Register("r11", 44, 4);
        this.arrayRegisters[12] = new Register("r12", 48, 4);
        this.arrayRegisters[13] = new Register("sp", 52, 4);
        this.arrayRegisters[14] = new Register("lr", 56, 4);
        this.arrayRegisters[15] = new Register("pc", 60, 4);
        
        this.arrayRegisters[16] = new Register("xpsr", 64, 4);
        this.arrayRegisters[17] = new Register("msp", 68, 4);
        this.arrayRegisters[18] = new Register("psp", 72, 4);
        this.arrayRegisters[19] = new Register("primask", 76, 4);
        this.arrayRegisters[20] = new Register("basepri", 80, 4);
        this.arrayRegisters[21] = new Register("faultmask", 84, 4);
        this.arrayRegisters[22] = new Register("control", 88, 4);
    }
}
